package cn.hh.annotation;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

/**
 * @Author huangh
 * @date 2021/11/02
 * @Description: 自定义注解
 */
/*决定注解可以使用地方*/
@Retention(RetentionPolicy.RUNTIME)
public @interface MyAnnotation3 {
    // 8种基本数据类型
    int intValue() default 1 ;
    long longValue() default 1L ;
    // ...其他类型省略

    // String
    String name() default "1";
    // 枚举
    CityEnum cityName() default CityEnum.BEIJING;
    // Class类型
    Class<?> clazz() default Object.class;
    // 注解类型
    MyAnnotation4 annotation4() default  @MyAnnotation4;

    // 以上几种类型的数组类型
    int[] intValueArray() default 1;
    String[] names() default "1";
    // ...其他类型省略
}

@interface MyAnnotation4 {
}

enum CityEnum {
    BEIJING,
    HANGZHOU,
}
